package com.gs.xbinfomytest.entity.dsl;

import com.gitee.hengboy.mybatis.enhance.dsl.expression.ColumnExpression;
import com.gitee.hengboy.mybatis.enhance.dsl.expression.TableExpression;
import com.gs.xbinfomytest.entity.GenTable;

/**
 * 代码生成业务表
 * @author ApiBoot Mybatis Enhance Codegen
 */
public class DGenTable extends TableExpression<GenTable> {

    public DGenTable(String root) {
        super(root);
    }

    public static DGenTable DSL() {
        return new DGenTable("gen_table");
    }

    /**
     * 编号
     */
    public ColumnExpression tableId = new ColumnExpression("table_id", this);
    /**
     * 表名称
     */
    public ColumnExpression tableName = new ColumnExpression("table_name", this);
    /**
     * 表描述
     */
    public ColumnExpression tableComment = new ColumnExpression("table_comment", this);
    /**
     * 实体类名称
     */
    public ColumnExpression className = new ColumnExpression("class_name", this);
    /**
     * 使用的模板（crud单表操作 tree树表操作）
     */
    public ColumnExpression tplCategory = new ColumnExpression("tpl_category", this);
    /**
     * 生成包路径
     */
    public ColumnExpression packageName = new ColumnExpression("package_name", this);
    /**
     * 生成模块名
     */
    public ColumnExpression moduleName = new ColumnExpression("module_name", this);
    /**
     * 生成业务名
     */
    public ColumnExpression businessName = new ColumnExpression("business_name", this);
    /**
     * 生成功能名
     */
    public ColumnExpression functionName = new ColumnExpression("function_name", this);
    /**
     * 生成功能作者
     */
    public ColumnExpression functionAuthor = new ColumnExpression("function_author", this);
    /**
     * 其它生成选项
     */
    public ColumnExpression options = new ColumnExpression("options", this);
    /**
     * 创建者
     */
    public ColumnExpression createBy = new ColumnExpression("create_by", this);
    /**
     * 创建时间
     */
    public ColumnExpression createTime = new ColumnExpression("create_time", this);
    /**
     * 更新者
     */
    public ColumnExpression updateBy = new ColumnExpression("update_by", this);
    /**
     * 更新时间
     */
    public ColumnExpression updateTime = new ColumnExpression("update_time", this);
    /**
     * 备注
     */
    public ColumnExpression remark = new ColumnExpression("remark", this);
    @Override
    public ColumnExpression[] getColumns() {
        return new ColumnExpression[]{tableId, tableName, tableComment, className, tplCategory, packageName, moduleName, businessName, functionName, functionAuthor, options, createBy, createTime, updateBy, updateTime, remark};
    }

}

